home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d19 / dlcnt157.arc / DLCOUNT.DOC < prev    next >
Text File  |  1991-01-26  |  16KB  |  312 lines

  1.       (****************************************************)
  2.       (* DLCounter Ver 1.33ß  Written by Gary Bouchard    *)
  3.       (* SysOp - The Computer Store BBS                   *)
  4.       (* St. Augustine, Florida (904)797-4824             *)
  5.       (* Copyright(c) 1990....All Rights Reserved         *)
  6.       (* Released August 4, 1990  Modified August 31,1990 *)
  7.       (****************************************************)
  8.  
  9.  
  10.                      -= Description =-
  11.  
  12. DLCounter is a program that will read thru your PCBoard(tm)
  13. DOWNLOAD.TXT file, and gather information on how many times a
  14. particular program has been downloaded from your BBS, and compile
  15. a list of files that have 1 or more downloads into a work file. The
  16. program then goes thru the work file, and inserts information about
  17. how many downloads a file has had into your DIR file, appending the
  18. information to your files description.
  19.  
  20.                      -= Requirements =-
  21.  
  22. To use DLCounter, you must be using PCBoard(tm) 14.5 or greater!
  23. This is because DLCounter uses PCBoards(tm) @X## macros for
  24. colorization, which is not compatible with previous versions of
  25. PCBoard(tm).
  26.  
  27. DLCounter will read your PCBoard.dat file to obtain information on
  28. the files that it needs to work with. My system's DOWNLOAD.TXT file
  29. is 235,456 bytes long. I have trimmed out the entries which contain
  30. information about ARC files since my system no longer has any, and
  31. presently have about 1½ years worth of download information
  32. recorded in it. My System contains approximately 1,300 verified
  33. files, and the initial run took about 1.5 minutes. Once the initial
  34. run has been made, subsequent runs are around 45 seconds to update
  35. all the files. This speed largely depends on how many DIRxx files
  36. you have on your system.
  37.  
  38.                      -= Installation =-
  39.  
  40. Installation could not be any easier. Place DLCount.exe anywhere on
  41. your system. The configuration file contains the information that
  42. the program needs to operate and is usually kept along with the
  43. program. DLCounter will create a temporary database file defined by
  44. the user which it uses to read from to update the DIRxx files. This
  45. file is created in the directory where DLCount is stored and is
  46. regenerated on each run. I recommend that you BACKUP your DIR files
  47. before you begin using the DLCounter, just in case your not happy
  48. with the results, or a glitch creeps up on us!
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.                      -= Configuration =-
  56.  
  57. The Configuration of DLCounter is quite simple. The Sample
  58. Configuration file included in this ZIP file contains examples of
  59. how the file is setup. The Configuration file is fully commented,
  60. and explains what is required to be in place. Any line in the
  61. configuration file that begins with a semi-colon ";" is ignored by
  62. DLCounter.
  63.  
  64. Following the example,first list your path to the file PCBOARD.DAT,
  65. then list the physical directories of your downloadable files with
  66. the heading "DLFILE". DLCounter wants to make sure the files exist
  67. before trying to enter the download count into the DIR file
  68. description. Next specify whether to you want DLCounter to create
  69. backup files using the *.BAK extension, just in case. Next an
  70. optional entry into the callers log made regarding the process.
  71. Then we need to tell DLCounter about the Conference DIR files that
  72. we would like included in the updates, and ONLY the Conferences.
  73. These are specifically the TEXT DIR files, and they have a heading
  74. of CONFS (for brevity). The Main Board DIR files are detected
  75. automatically by DLCounter. We also have the ability to specify a
  76. color using the PCBoard(tm) @X## macros with the parameter HLITE.
  77. See the Configuration File for the color chart. 
  78.  
  79. These commands do not need to be in any certain order, and are not
  80. case sensitive. We can also specify in the configuration if you
  81. want a bulletin to be generated which contains the most active
  82. files. To add this, move to the Heading which say's "BLT", and add
  83. to the line the path/location/name of the BLT file you want
  84. generated. You may also specify what the minimum download count
  85. should be to be included in the BLT file. The BLT file is done
  86. using PCBoard(tm) @X## color macros, and is colorized based on the
  87. amount of downloads a particular file has to it's credit. If you
  88. need more capabilities in the BLT generation, please let me know!
  89. If you intend on creating configuration files specifically for
  90. conferences, then you only need to put in DLFILE entries which
  91. match the particular conference. You may also want to consider
  92. naming the configuration files according to your conference numbers
  93. to help keep track of which is which. 
  94.  
  95.                      -= Operation =-
  96.  
  97. Operation is also quite simple, and the program was designed to be
  98. operated from your EVENT.SYS file. Simply type the command
  99. "DLCount", along with the name of the configuration file you intend
  100. to use with this particular run, and press enter. Your program will
  101. do the rest. The first time you run the program, you will want to
  102. create a master list, and let the program insert the initial
  103. download counts. This is done by passing a command line parameter
  104. after the program name like so;
  105.  
  106. C:\PCB>dlcount <space> dlcount.cfg <space> /new <enter>
  107.                           ____always first
  108.  
  109. DLCounter allows 3 command line switches to be used by the program
  110. after the name of your configuration file has been specified.
  111.  
  112. The "/NEW" parameter is one besides the name of the configuration
  113. file that is recognized by the program and should be typed to
  114. include the slash, which is denoted as a switch. This action
  115. creates the database file from which we start out. If the program
  116. does not find the user defined database file, it will generate one;
  117. but without the "/NEW" parameter, the file will only contain
  118. downloads greater than or equal to the filedate of the config file.
  119. After the initial database list is done the first time and your DIR
  120. files have been updated, the "/NEW" is no longer required unless
  121. you wanted it. It will *NOT* effect the download count if you do
  122. use the "/NEW" parameter again. In fact, I use the "/NEW" parameter
  123. when I want to change the highlight colors in the DIRxx file.     
  124.  
  125. Without the "/NEW" parameter, DLCounter checks the date of the last
  126. run, and from that point on, only collects filenames that have been
  127. added since the last run. DLCount uses the date of the
  128. configuration file to determine the last run, and the filedate of
  129. the config file is updated after successful completion of the
  130. program. 
  131.  
  132. Another switch that can be used is to aid in debugging, and the
  133. switch is called "/DB".  This switch places x's into your database
  134. file as the record is updated, and allows us to run a debugging
  135. program call DLCDB which is included in the ZIP file. The DLCDB
  136. program will print or display any database entries that did not get
  137. updated for one reason or another. If you do not use the "/DB"
  138. switch when you run DLCounter, it will not put the x's into the
  139. records.
  140.  
  141. There is also a switch that will allow you to make a run, causing
  142. DLCounter to remove the entries from the DIRxx file.
  143. This switch is "/CLEAR". It may be placed anywhere on the command
  144. line after the configuration file name, and is not case sensitive. 
  145. If you desire to clear the entries, you need a complete database
  146. file, so that DLCounter knows what entries should be deleted. To
  147. accomplish this, simply use the "/NEW" switch along with the
  148. "/CLEAR" command.
  149.  
  150. The final switch is called "/NOTAG". When DLCounter runs, and
  151. generates it's HOT FILES list, It appends at the bottom of the list
  152. a tag line that say's : 
  153.  
  154. "■ DLCounter Ver 1.33ß (c) 1990... Written by Gary Bouchard "
  155.  
  156. Some people do not like that kind of thing, so I allow the SysOp to
  157. suppress the tagline. Who say's I have an ego problem! <grin>.
  158.  
  159. Because these command line switches are probably not used all the
  160. time, I will not be moving them into the configuration file. 
  161. It doesn't make sense to take up space with temporary commands,
  162. then remove them for a new run.
  163. So that you know what the program is doing, I will explain the
  164. process. When DLCounter is first run, it checks to see if the user
  165. defined database file exists, and if so what was the date of the
  166. last run. This is done by comparing the date of the configuration
  167. file with the date of the database file. After a successful
  168. execution of DLCounter, the file date of the configuration file is
  169. updated to reflect the current system date. If DLCounter determines
  170. that your list needs rebuilding, based on the date of the last run,
  171. it will compile a list, first of all scanning the physical files
  172. that it can locate in the download directories, then it will
  173. compile a list of all of the entries contained in your directories,
  174. counting each file, and keeping track of how many times a
  175. particular file was found in the DOWNLOAD.TXT file. Once all the
  176. files have been accounted (existence verified) for, DLCounter
  177. writes out a list of all the files it found with 1 or more
  178. downloads to a database file defined by the user. This is the work
  179. file that DLCounter uses to make your entries into the DIRxx file.
  180. The reason it is done this way, is because PCBoard(tm) records
  181. information into the DOWNLOAD.TXT file about whether the file
  182. transaction was an upload or a download, The name of the person
  183. that created the file transaction, the date and time of the file
  184. transaction, the name of the file transferred, the protocol used,
  185. the transfer rate (CPS), and the number of errors that occurred
  186. during the transfer. Every file transaction that occurs, gets
  187. appended to the end of this file. What DOWNLOAD.TXT does not tell
  188. you, is from what directory or DIRxx location the file was
  189. transferred from. It is for this reason that when DLCounter is in
  190. operation, it will open each of your DIRxx files 1 by 1, read in
  191. the file name, and look for a match in the file Database. A binary
  192. search of the Database file is conducted, so there is virtually no
  193. difference in speed if you had 1 entry in the file or 2000. If it
  194. finds a match, it gathers the information on how many times the
  195. file was downloaded, and inserts that information into your DIRxx
  196. listing, appending the count to the file description. Rather than
  197. trying to locate the end of a line and putting this information at
  198. the end, it inserts a new line with the count. If the count should
  199. change in the future, DLCounter will merely update the count rather
  200. than add another line. This gives the program other capabilities,
  201. like user definable color highlighting of the Download count. 
  202.  
  203.                      -= Caveats =-
  204.  
  205. DLCounter is believed to be in a bug free state at this point thru
  206. the repetitive testing by me. This program is currently in a BETA
  207. test state, and is being released to put it thru the ringer (so to
  208. speak!). Please report any problems that might occur directly to
  209. me, so that I can get them straightened out ASAP. Please do not
  210. bother Clark Development with problems concerning this software. My
  211. BBS is a free access system, and upon registration, users have full
  212. privileges to get the latest version of DLCounter, or report
  213. problems.
  214.  
  215.  
  216.  
  217.                      -= Comments =-
  218.  
  219. I have been working on DLCounter for a long time...in fact.. I got
  220. the idea from logging onto CompuServe. I work for a living, and
  221. program for a hobby. I have released this program as "FREEWARE" as
  222. it is classified. This program is fully functional, and not
  223. CRIPPLED in any way, shape, or form. I *DO NOT* want any money for
  224. this program. All I ask in return for it's use is some feedback, or
  225. suggestions for enhancements, and that you drop me a line on my
  226. free access BBS, letting me know that you are using it. I have been
  227. a PCBoard(tm) SysOp since version 10.0 was released, and the reason
  228. I wrote my own program was because as a SysOp, I was tired of being
  229. nickeled and dimed to death for utilities for the BBS. That's what
  230. inspired me to start writing my own programs, and release them
  231. without charge. I am not against anyone making a few bucks from a
  232. user of the BBS, but I personally feel (and I'm probably not alone)
  233. that SysOps already have a HUGE investment into these systems and
  234. can not continue to shell out money for every program that makes
  235. the job just a little easier, each time one comes along. There is
  236. an association in the works, that, in the future will have their
  237. own versions of the popular software to compete with all the
  238. "NAGWARE", and at the right price....who's going to win? The users!
  239. Please remember also that I am not a professional programmer, but
  240. a mere novice. Any comments/suggestions that you Pro's can make to
  241. help me learn sound programming techniques would be appreciated. 
  242.  
  243.                      -= Legal Stuff =-
  244.  
  245. This is a Copyrighted(c) program. It cannot be altered,
  246. disassembled, decompiled, or hacked without my expressed written
  247. consent. I maintain the rights to the source code, and will support
  248. the program as long as there is an interest in it. I cannot be
  249. responsible for any damage that may result from the use of this
  250. program. Though the program appears to be "BUG FREE" there maybe
  251. something that I did not catch. This program is in it's BETA
  252. TESTING stage.....As Sam Smith say's -> "You've Been Warned!".
  253.  
  254. This ZIP file was assembled using the Authenticity Checking
  255. Capabilities of PKZIP(tm) with a label of;                      
  256.  
  257. "The Computer Store BBS -> 904-797-4824". 
  258.  
  259. If Authenticity verification is not present when you unzipped this
  260. file, or the Authenticity check does not show the above, then DO
  261. NOT use it, as it has been altered, and may not be safe to use.
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.                      -= Credits =-
  272.  
  273. I want to personally thank Duncan Huges for giving me the
  274. information that was required to complete this program. It's people
  275. like him that make programming fun to do! I would also like to
  276. thank Sam Smith of the ToolShop BBS for the terrific tools he has
  277. written for Turbo Pascal programming, and his generosity in sharing
  278. them with others. Also a big thank you to Art Emery of the Taken
  279. Road BBS in Margate, Florida for his assistance in debugging the
  280. program on a system other than mine. I also don't want to forget my
  281. new programming partner from the Falcon Warrior BBS, Utah - Bill
  282. Shields for giving me ideas!
  283.  
  284.                      -= Technical =-
  285.  
  286. DLCounter is written in Borlands Turbo Pascal ver 5.5, and includes
  287. routines from DUNCAN HUGES of San Diego, Ca. and Sam Smith of the
  288. ToolShop BBS in Phoenix, Arizona. The system used to write the
  289. program is a IBM PS/2 model 60 with 230meg of Disk, and 3megs of
  290. RAM using LIM 3.2 Expanded memory, Compaq DOS ver 3.31, and tested
  291. under a Beta Version of MS-DOS 5.0, and DR.DOS ver 5.0 without any
  292. problems. In fact, loading the DOS Kernel into HIMEM allows very
  293. large DOWNLOAD.TXT files to be processed easily. The program was
  294. tested using PCBoard(tm) ver 14.5/E3 single node system. Source
  295. code will be available for inspection after the program has been
  296. fully debugged, and then upon request.
  297.  
  298.                      -= Notes =-
  299.  
  300. I plan to add some features to the program as soon as it is
  301. determined to be stable. I don't want to give away the new
  302. features, but I am certainly open to suggestions. Beta Test
  303. versions will continue until Version 2.0 or the program finally
  304. proves to be bug free.
  305.  
  306. I am a member of the Intelec(tm) NetMail Network, and can be
  307. reached thru just about any of the conferences available. My BBS #
  308. is on the top of page #1, and is a free open access system upon
  309. registration. I request that any questions or problems you
  310. encounter with this program be directed to me on my BBS or thru the
  311. Net/Mail network.
  312.